package com.pkx.guide.info.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.pkx.guide.common.base.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;

/**
 * 自动发布任务表
 *
 * @Author : YangLe
 * @create 2025/10/28 14:29
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("t_info_guide_pubilsh_task")
@Schema(name="TInfoGuidePublishTask", description="自动发布任务表")
public class TInfoGuidePublishTask extends BaseEntity implements Serializable {


        private static final long serialVersionUID = 1L;

        @Schema(description = "主键id")
        @TableId(value = "id", type = IdType.AUTO)
        private Integer id;

        @Schema(description = "设备id")
        @TableField("guide_id")
        private Integer guideId;

        @Schema(description = "诱导屏设备编号")
        @TableField("guid_no")
        private String guidNo;

        @Schema(description = "发布类型 0：图片 1：文字")
        @TableField("publish_type")
        private Integer publishType;

        @Schema(description = "诱导屏类型 0-三思 1-乾丰")
        @TableField("guide_type")
        private Integer guideType;

        @Schema(description = "设备模式类型 0：自动  1：手动  2：感应控制")
        @TableField("mode_type")
        private Integer modeType;

        @Schema(description = "设备模式名称")
        @TableField("mode_name")
        private String modeName;

        @Schema(description = "播放表id")
        @TableField("play_list_id")
        private Integer playListId;

        @Schema(description = "播放表名称")
        @TableField("play_list_name")
        private String playListName;

        @Schema(description = "播放表类型 0-预设 1-自定义")
        @TableField("play_list_type")
        private Integer playListType;

        @Schema(description = "方案编号")
        @TableField("scheme_id")
        private Integer schemeId;

        @Schema(description = "方案名称")
        @TableField("scheme_name")
        private String schemeName;

        @Schema(description = "方案明细编号")
        @TableField("scheme_detail_id")
        private Integer schemeDetailId;

        @Schema(description = "发布的图片编号")
        @TableField("img_id")
        private String imgId;

        @Schema(description = "发布的图片内容 0:中运量车道 1:车辆直行 2:系统测试")
        @TableField("img_content_type")
        private Integer imgContentType;

        @Schema(description = "发布的图片内容")
        @TableField("img_content_name")
        private String imgContentName;

        @Schema(description = "发布的图片地址")
        @TableField("img_url")
        private String imgUrl;

        @Schema(description = "发布的文字内容，多屏以;分隔")
        @TableField("text")
        private String text;

        @Schema(description = "发布的文字字体，多屏以;分隔")
        @TableField("font")
        private String font;

        @Schema(description = "发布的文字大小，多屏以;分隔")
        @TableField("font_size")
        private String fontSize;

        @Schema(description = "发布的文字颜色，多屏以;分隔")
        @TableField("font_color")
        private String fontColor;

        @Schema(description = "发布详情，ip和prgid的json数组字符串")
        @TableField("publish_detail")
        private String publishDetail;

        @Schema(description = "发布开始时刻，例12:00")
        @TableField("start_time_scale")
        private String startTimeScale;

        @Schema(description = "发布结束时刻，例12:00")
        @TableField("end_time_scale")
        private String endTimeScale;

        @Schema(description = "发布时间")
        @TableField("publish_time")
        private String publishTime;

        @Schema(description = "是否发布 0:否 1:是")
        @TableField("is_publish")
        private Integer isPublish;

        @Schema(description = "自动发布运行状态 0-开启 1-停止")
        @TableField("state")
        private Integer state;

        @Schema(description = "是否发布成功")
        @TableField(exist = false)
        private Boolean publishStatus;

        @Schema(description = "逻辑字段：播放表")
        @TableField(exist = false)
        private TInfoGuidePlayList guidePlayList;

        @Schema(description = "逻辑字段：设备id，多个以,分隔")
        @TableField(exist = false)
        private String guideIds;

        @Schema(description = "逻辑字段：诱导屏设备编号，多个以,分隔")
        @TableField(exist = false)
        private String guidNos;

        @Schema(description = "是否节假日 0是 1否")
        @TableField("holidays")
        private Integer holidays;


}


